<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

class productosController extends CI_Controller {

    //constructor de la clase
    function __construct(){
        parent::__construct();
        $this->load->model('usuarioModel');
        $this->load->model('productoModel');
        $this->load->model('categoriaModel');
    }
        
    public function index(){
        
    }
    
    public function administrar_productos(){
        //carga los productos de la bd desde el modelo
        $data['productos'] = $this->productoModel->obtener_todos_productos();
        
        //guarda los contenidos en la variable data
        $data['header'] =  'pages/header';
        $data['menuLateral'] =  'administrador_contents/menuAdministradorContent';
        $data['contenido'] =  'pages/contenido';
                
        $data['pagina'] = 'administrarProductos';
        //carga la vista y se le pasa la variable que tiene los usuarios y los contenidos
        $this->load->view('plantilla',$data);
    }
    
    public function agregar_producto(){
        //carga la vista para llenar los datos del nuevo producto
        $data['header'] =  'pages/header';
        $data['menuLateral'] =  'administrador_contents/menuAdministradorContent';
        $data['contenido'] =  'productos_contents/crearProductoContent';
        $data['categorias'] =  $this->categoriaModel->obtener_categorias();
        
        $this->load->view('plantilla',$data);
    }
    
    public function crear_producto(){       
        //recoje la informacion enviada por post desde la vista:
        $producto_info = $this->input->post('producto');
       
        $producto_id=null;
        
        /*si se ha instanciado a este id, indica que se ha hecho una actualizacion 
            de un usuario ya existente, entonces se asignara a la variable usuario_id*/
        if(isset($_POST['producto_id'])){
            $producto_id = $_POST['producto_id'];
        }
        //llamado al modelo
        $this->productoModel->crear_producto($producto_info,$producto_id);
        
        //redireccionamos hacia la lista de productos
        redirect('productosController/administrar_productos');
    }
    
    public function eliminar_producto($id){
        //llamado al modelo
        $this->productoModel->eliminar_producto($id);
        
        //redireccionamos hacia la lista de usuarios
        redirect('productosController/administrar_productos');
    }
    
    public function actualizar_producto($id){
        //obtiene el id del usuario a modfificar
        $data['producto'] = $this->productoModel->obtener_producto($id);
        $data['header'] =  'pages/header';
        $data['menuLateral'] =  'administrador_contents/menuAdministradorContent';
        $data['contenido'] =  'productos_contents/actualizarProductoContent';
        $data['categorias'] =  $this->categoriaModel->obtener_categorias();
        
        $this->load->view('plantilla',$data);
    }
    
    public function visualizar_producto($pro_id){
        //obtiene el id del usuario a modfificar
        $data['producto'] = $this->productoModel->obtener_producto($pro_id);
        $data['header'] =  'pages/header';
        $data['menuLateral'] =  'administrador_contents/menuAdministradorContent';
        $data['contenido'] =  'productos_contents/visualizarProductoContent';
        
        $this->load->view('plantilla',$data);
    }
  
}